<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Chapter 4. Stage</title>
    <link rel="stylesheet" href="style.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Clutter编程" />
    <link rel="up" href="index.html" title="Clutter编程" />
    <link rel="prev" href="chapter-headers-and-linking.html" title="Chapter 3. 头文件和链接" />
    <link rel="next" href="sec-stage-widget.html" title="Stage Widget" />
  </head>
  <body>
    <div class="navheader">
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Chapter 4. Stage</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="chapter-headers-and-linking.html"><img src="../icons/prev.png" alt="Prev" /></a> </td>
          <th width="60%" align="center"> </th>
          <td width="20%" align="right"> <a accesskey="n" href="sec-stage-widget.html"><img src="../icons/next.png" alt="Next" /></a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="chapter" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title"><a id="sec-stage"></a>Chapter 4. Stage</h2>
          </div>
        </div>
      </div>
      <div class="toc">
        <p>
          <b>Table of Contents</b>
        </p>
        <ul>
          <li>
            <span class="sect1">
              <a href="sec-stage.html#sec-stage-basics">Stage 基础</a>
            </span>
          </li>
          <li>
            <span class="sect1">
              <a href="sec-stage-widget.html">Stage Widget</a>
            </span>
          </li>
        </ul>
      </div>
      <div class="sect1" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title" style="clear: both"><a id="sec-stage-basics"></a>Stage 基础</h2>
            </div>
          </div>
        </div>
        <p>
每个 <span class="application">Clutter</span> 应用程序至少包含一个 <code class="classname">ClutterStage</code> 。这个 stage 包含矩形 (rectangle)、图像 (image)、文本 (text)等界面元素 (actor)。actor 将在下一章讨论，本章讨论怎样创建 stage，怎样与用户交互。
</p>
        <p>
首先，调用 <code class="function">clutter_init ()</code> 初始化 <span class="application">Clutter</span>，然后可以通过调用 <code class="function">clutter_stage_get_default()</code> 获得应用程序的 stage。你也可以在一个更复杂的 GTK+ 窗口中使用 <code class="classname">GtkClutterEmbed</code> widget，
相关内容请参考 <a class="link" href="sec-stage-widget.html" title="Stage Widget"> Stage Widget </a> 部分。
</p>
        <p>
<code class="classname">ClutterStage</code> 继承于 <code class="classname">ClutterActor</code>，所以 actor 的很多函数都可以被 stage 使用。比如，调用 <code class="function">clutter_actor_show()</code> 显示 stage。
</p>
        <p>
<code class="classname">ClutterStage</code> 也实现了 <code class="classname">ClutterContainer</code> 的接口，因此通过调用 <code class="function">clutter_container_add()</code> 加入自己的 actor。
</p>
        <p>
调用 <code class="function">clutter_main()</code> 开始 main 循环，以便于 stage 的 actor 可以动起来并与用户交互。
interaction.
</p>
        <p>
          <a class="ulink" href="http://clutter-project.org/docs/clutter/0.8/ClutterStage.html" target="_top">Reference</a>
        </p>
        <div class="sect2" lang="en" xml:lang="en">
          <div class="titlepage">
            <div>
              <div>
                <h3 class="title"><a id="stage-example"></a>示例</h3>
              </div>
            </div>
          </div>
          <p>
下面的例子显示了一个 <code class="classname">ClutterStage</code>，并且处理鼠标点击事件，由于 stage 上还没有 actor，所以只能看到一个黑色矩形。
</p>
          <p>
编译代码用以下命令，注意在 <span class="command"><strong>pkg-config</strong></span> 两侧用<code class="literal">反向单引号</code>。参考 <a class="link" href="chapter-headers-and-linking.html" title="Chapter 3. 头文件和链接">头文件和链接</a> 部分。</p>
          <p>
</p>
          <pre class="programlisting">
gcc -Wall -g example.c -o example `pkg-config clutter-0.8 --cflags  --libs`
</pre>
          <p>
</p>
          <div class="figure">
            <a id="figure-stage"></a>
            <p class="title">
              <b>Figure 4.1. Stage</b>
            </p>
            <div class="figure-contents">
              <div class="screenshot">
                <div>
                  <img src="./figures/stage.png" alt="Stage" />
                </div>
              </div>
            </div>
          </div>
          <br class="figure-break" />
          <p>
            <a class="ulink" href="./examples/stage" target="_top">Source Code</a>
          </p>
        </div>
      </div>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="chapter-headers-and-linking.html"><img src="../icons/prev.png" alt="Prev" /></a> </td>
          <td width="20%" align="center"> </td>
          <td width="40%" align="right"> <a accesskey="n" href="sec-stage-widget.html"><img src="../icons/next.png" alt="Next" /></a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">Chapter 3. 头文件和链接 </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">
              <img src="../icons/home.png" alt="Home" />
            </a>
          </td>
          <td width="40%" align="right" valign="top"> Stage Widget</td>
        </tr>
      </table>
    </div>
  </body>
</html>
